home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 2000 January / Macworld (2000-01).dmg / Shareware World / Graphics / DeFish / README < prev   
Text File  |  1999-10-22  |  7KB  |  100 lines

  1. DeFish
  2.  
  3. DeFish is an application that can be useful in constructing environment maps from photographs taken with fisheye lenses. This application makes use of technology that was widely published in 1986, 5 years before any fisheye patents.
  4.  
  5. The intent is to provide enough capability to project a fisheye image to a perspective image, thereby allowing the user to use the perspective images in other environment map authoring software, such as Apple's QuickTime VR Authoring Studio. The primary advantage to this technique is to capture a much larger field of view than that
  6.  
  7. This software has only been tested on 180° fisheye images (i.e. 8 mm fisheye lens on a 35 mm camera) that are centered in the frame. Eventually, it should be able to handle 6 mm fisheyes, 16 mm fisheyes, or others; some additional user interface elements need to be developed for these, or especially non-centered fisheyes.
  8.  
  9. As time permits, I intend to enhance this application to make it more useful in a production environment,
  10.  
  11. Typical Usage: 
  12.  
  13. (1) Double-click on the application.
  14. (2) Select "Open…" from the "File" menu to open a fisheye image.
  15. (3) Select "Perspective Parameters…" from the "Warp" menu and set the desired field of view.
  16. (4) Select "Show Fisheye Circle" from the "Warp" menu, to verify that the circle matches that of the fisheye image (8 mm fisheyes).
  17. (5) To adjust the fisheye circle, select "Adjust Fisheye Circle" from the "Warp" menu. Then you can resize the circle by clicking on it and dragging it (two modes: with or without the option key), or moving it by clicking not on it and dragging. You should also select "Fisheye Calibration…" from the "Warp" menu. Set the FOV. Check the numbers for "Radius" and "Center", which were set by clicking and dragging. You can resize the fisheye window by clicking and dragging in the lower right corner (16x16 pixel square), or by clicking in the zoom box. Make sure to uncheck the "Adjust Fisheye Circle" menu item before you do so, or you might change the circle instead of resizing the window. It's good practice to turn it off when you're done calibrating it, for safety's sake.
  18. (6) Select "Create Perspective" from the "Warp" menu to create the perspective image. This may take a while, especially for larger fields of view.
  19. (7) Select "Save…" from the "File" menu to save the perspective image if you like it, or tweak the parameters until you do.
  20. (8) Repeat (2) through (7) for the remaining images. Some of the parameters will probably be used for the whole sequence, with the possible exception of the fisheye center calibration.
  21.  
  22. or
  23. (3) Select "Cylindrical Parameters". With a round 180° fisheye image, you would probably want to set the first FOV to 180. The second will be the vertical field of view. As you change this value, you can see the effect on the height of the panorama.
  24. (6) "Create Cylinder"
  25.  
  26. Notes
  27.  
  28. The fisheye FOV is specified for the fisheye circle. For the round fisheye images (e.g. 6 and 8 mm), it is obvious where the circle is. For the full-frame (rectangular) fisheye images (e.g. 16 mm), resize the circle out to the corners. The circle is used to clip / crop the fisheye, so since you don't want to throw away any of the rectangular image, you put it to the max. As a guideline, for a 16 mm fisheye, I've calibrated it with the fisheye circle radius being 180% and the FOV being 170°.
  29.  
  30. The most important thing to correct the distortion is the FOV of the lens — well, that's assuming that the image is centered correctly. Let me start all over. The most important thing to correct the distortion is that the fisheye is properly centered in the fisheye circle. This is obvious for the round fisheye images, but isn't easy for the rectangular ones, because the photo scanner may have cropped and recentered it. This is less likely a problem with digital rather than film-based cameras, but still exists. At least the digital center doesn't jitter around between frames.
  31.  
  32. The second most important thing is to set the fisheye FOV properly. This should get you all the way there most of the time.
  33.  
  34. The third most important thing is to set the polynomial radial distortion. If I don't know how to set these values, I can't expect you to, either. I'll try to get a calibration table together sometime.
  35.  
  36.  
  37. New Features in version 1.5
  38.  
  39. • Batch processing by dragging multiple files from the Finder.
  40. • Separate FOV's for perspective and cylinder, appropriately defaulted.
  41. • Rotation of fisheye by 90° increments.
  42. • Bug fix to use consistent parameters when the default dialog is used.
  43. • Bug fix to generate cylindrical panoramas greater than 180°. Works OK for mirror balls.
  44. • Save preferences.
  45. • Undo for adjusting the circle.
  46.  
  47.  
  48. New Features in version 1.4
  49.  
  50. • Dangling perspective faces
  51. • Conversion to cylinder
  52.  
  53. New Features in version 1.3
  54.  
  55. • Direct manipulation for calibrating the fisheye circle.
  56. • DeFish icon.
  57.  
  58. July 8, 1999.
  59.  
  60. New Features in version 1.2
  61.  
  62. • Bug fixes dealing with the zoom box.
  63.  
  64. July 6, 1999.
  65.  
  66. New Features in version 1.1
  67.  
  68. Several new features were accommodated in version 1.1.
  69. • Fisheyes of  other than 180° are accommodated. In particular, for a 16 mm fisheye, the following parameters worked well:
  70.   fisheye circle = 180%, FOV = 170°; perspective HFOV=88°, VFOV=120°+.
  71. • Non-square winows now resize properly.
  72. • The resolution field works. 100% has 1:1 pixel density at the center. More has more resolution, etc.
  73. • The fields in ther perspective dialog interplay. If you change the field of view, the dimensions of the image change.
  74. • You can have non-square perspective images.
  75. • The radio buttons in the perspective dialog are somewhat non-standard. You click an active one to make it inactive. Although the interface is a bit different, it is obvious what it displays: the active fields are independent, and the inactive fields are derived from the active fields.
  76. • Problems with not having an InterfaceLib at run time are not understood, but seem to have been resolved.
  77. • There is an anomolous behavior due to ambiguity when resolution% is the dependent field, and you have independent X and Y fov's or image dimensions: the zoom field is updated correctly, but the other fov or image dimension is not. Say you changed the HFOV (first column); if you then inactive the FOV line and click in the resolution field, the ambiguity will be resolved and the numbers will be consistent.
  78.  
  79. July 5, 1999.
  80.  
  81.  
  82. Still to come…
  83.  
  84. • Undo, especially of the interactive circle adjustment
  85. • The ability to save preferences.
  86. • Several default circles, menu-selectable
  87. • Menu-selectable lens calibration bundles
  88. • Line straightening to set dewarp parameters
  89. • Generate overlapping faces
  90. • Menu-selectable perspective options
  91.  
  92.  
  93.  
  94. Send comments or bug reports to turk@worldserver.com.
  95.  
  96.  
  97. Ken Turkowski
  98. July 4, 1999.
  99.  
  100.